package handler

import (
	"github.com/robfig/cron/v3"
	"log"
	"ulcdkey/db"
)

// 定时任务  将redis中已经使用完的cdk清单数据和对应的cdk使用数据存入mysql，并删除redis中的缓存
func SetTimeOutTask() {
	crontab := cron.New()

	/*
		linux 中的 cron 只能精确到分钟，
		而 github.com/robfig/cron 也按照操作系统进行判断，默认支持到分钟级别
	*/

	// 添加定时任务, * * * * * 对应 分，时，日，月，星期
	_, err := crontab.AddFunc("30 2 * * *", db.RedisToMysql)
	if err != nil {
		log.Fatal("定时任务开启失败，err=", err)
		return
	}
	// 启动定时器
	crontab.Start()
	log.Println("定时任务开启成功,启动cron：", "30 2 * * *")
	/* c.Stop()  // 停止定时任务(不停止已经运行的任务) */
}
